#include "secondwindow.h"
#include <QPushButton>
#include <QMenuBar>
#include <QMenu>
#include <QToolBar>
#include <QAction>
#include <QStatusBar>
#include <QLabel>
#include <QDockWidget>
#include <QTextEdit>
#include <QMessageBox>

Secondwindow::Secondwindow(QWidget *parent) : QMainWindow(parent)
{
    resize(600,600);
    QMenuBar * bar =  menuBar();
    setMenuBar(bar);

    QMenu * fileMenu = bar->addMenu("文件");
    QMenu * editMenu = bar->addMenu("编辑");

    QAction * action = fileMenu->addAction("新建");
    //第一种办法 直接用绝对路径
    //action->setIcon(QIcon("D:\\qtproject\\study\\study\\icon.png"));
    //第二种办法
    //将文件图片拷贝到项目目录下
    //右键项目-》添加新文件-》qt->qt resource file ->给资源文件起名
    //res 生成 res.qrc
    //open in editor 编辑资源
    //添加前缀 添加文件
    //使用 :+ 前缀名 + 文件名
    action->setIcon(QIcon(":/file/icon.png"));


    fileMenu->addSeparator();
    fileMenu->addAction("打开");

    editMenu->addAction("复制");

    QToolBar *toolBar = new QToolBar;
    //添加toolbar到指定位置
    addToolBar(Qt::LeftToolBarArea, toolBar);

    //设置只允许左右停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);

    //设置是否可以浮动
    toolBar->setFloatable(false);

    //设置是否可以改变位置
    toolBar->setMovable(false);

    toolBar->addAction(action);
    toolBar->addSeparator();

    QPushButton *btn = new QPushButton("测试",this);
    toolBar->addWidget(btn);

    //状态栏 最多只有一个
    QStatusBar *staBar = statusBar();
    setStatusBar(staBar);

    QLabel *label = new QLabel("提示信息",this);
    staBar->addWidget(label);

    QLabel *label2 = new QLabel("右侧信息",this);
    staBar->addPermanentWidget(label2);

    //浮动窗口
    QDockWidget *dockWidget = new QDockWidget("浮动窗口",this);
    addDockWidget(Qt::LeftDockWidgetArea,dockWidget);
    dockWidget->setAllowedAreas(Qt::LeftDockWidgetArea);

    QTextEdit *textEdit = new QTextEdit("文字编辑",this);
    //设置中心部件 只能一个
    setCentralWidget(textEdit);

    //消息框
    QMessageBox::about(this,"hello world","你好啊");

    if(QMessageBox::Save == QMessageBox::question(this,"标题","内容",QMessageBox::Cancel|QMessageBox::Save,QMessageBox::Cancel)){
        QMessageBox::about(this,"测试","选择了save");
    }

}


void Secondwindow::openWindow(){
    window->show();
}

void Secondwindow::closeWindow(){
    window->close();
}
